/*
 * UI_Keys.h
 *
 *  Created on: 23.02.2011
 *      Author: Tavin
 */

#ifndef UIKEYS_H_
#define UIKEYS_H_
#include "gpio.h"
#include "board.h"



#define UI_KEY_L_UP 		0
#define UI_KEY_L_DOWN		1
#define UI_KEY_L_LEFT		2
#define UI_KEY_L_RIGHT		3

#define UI_KEY_R_UP			4
#define UI_KEY_R_DOWN		5
#define UI_KEY_R_LEFT		6
#define UI_KEY_R_RIGHT		7




typedef struct {

	uint8_t keyStatus;
	uint8_t keyFlank;

} UiKeysData_t;



void UIKeys_init();
void UIKeys_process();
boolean UIKeys_keyPressed(uint8_t keyNumber);

/****************************************************************************************/
/*																						*/
/*	Function : UIKeys_keyLUp								Author : OG					*/
/*																						*/
/*	Description : 								   										*/
/*																						*/
/*	Version : 1.0					Date :2011.2.23			Status : Working   			*/
/*																						*/
/****************************************************************************************/
boolean static inline UIKeys_keyLUp()
{
	if (gpio_get_pin_value(KEY_L_UP)>0)
		return(false);


	return (true);
}



/****************************************************************************************/
/*																						*/
/*	Function : UIKeys_keyLDown								Author : OG					*/
/*																						*/
/*	Description : 								   										*/
/*																						*/
/*	Version : 1.0					Date :2011.2.23			Status : Working   			*/
/*																						*/
/****************************************************************************************/
boolean static inline UIKeys_keyLDown()
{
	if (gpio_get_pin_value(KEY_L_DOWN)>0)
		return(false);


return (true);
}


/****************************************************************************************/
/*																						*/
/*	Function : UIKeys_keyLLeft								Author : OG					*/
/*																						*/
/*	Description : 								   										*/
/*																						*/
/*	Version : 1.0					Date :2011.2.23			Status : Working   			*/
/*																						*/
/****************************************************************************************/
boolean static inline UIKeys_keyLLeft()
{
	if (gpio_get_pin_value(KEY_L_LEFT)>0)
		return(false);


return (true);
}

/****************************************************************************************/
/*																						*/
/*	Function : UIKeys_keyLRight								Author : OG					*/
/*																						*/
/*	Description : 								   										*/
/*																						*/
/*	Version : 1.0					Date :2011.2.23			Status : Working   			*/
/*																						*/
/****************************************************************************************/
boolean static inline UIKeys_keyLRight()
{
	if (gpio_get_pin_value(KEY_L_RIGHT)>0)
		return(false);


return (true);
}



/****************************************************************************************/
/*																						*/
/*	Function : UIKeys_keyRUp								Author : OG					*/
/*																						*/
/*	Description : 								   										*/
/*																						*/
/*	Version : 1.0					Date :2011.2.23			Status : Working   			*/
/*																						*/
/****************************************************************************************/
boolean static inline UIKeys_keyRUp()
{
	if (gpio_get_pin_value(KEY_R_UP)>0)
		return(false);


return (true);
}



/****************************************************************************************/
/*																						*/
/*	Function : UIKeys_keyRDown								Author : OG					*/
/*																						*/
/*	Description : 								   										*/
/*																						*/
/*	Version : 1.0					Date :2011.2.23			Status : Working   			*/
/*																						*/
/****************************************************************************************/
boolean static inline UIKeys_keyRDown()
{
	if (gpio_get_pin_value(KEY_R_DOWN)>0)
		return(false);


return (true);
}


/****************************************************************************************/
/*																						*/
/*	Function : UIKeys_keyRLeft								Author : OG					*/
/*																						*/
/*	Description : 								   										*/
/*																						*/
/*	Version : 1.0					Date :2011.2.23			Status : Working   			*/
/*																						*/
/****************************************************************************************/
boolean static inline UIKeys_keyRLeft()
{
	if (gpio_get_pin_value(KEY_R_LEFT)>0)
		return(false);


return (true);
}

/****************************************************************************************/
/*																						*/
/*	Function : UIKeys_keyRRight								Author : OG					*/
/*																						*/
/*	Description : 								   										*/
/*																						*/
/*	Version : 1.0					Date :2011.2.23			Status : Working   			*/
/*																						*/
/****************************************************************************************/
boolean static inline UIKeys_keyRRight()
{
	if (gpio_get_pin_value(KEY_R_RIGHT)>0)
		return(false);


return (true);
}

#endif /* UI_KEYS_H_ */
